/*
 * CRtpPackager.h
 *
 *  Created on: 2015年7月5日
 *      Author: terry
 */

#ifndef CRTPPACKAGER_H_
#define CRTPPACKAGER_H_

#include "RtpPackager.h"
#include "DoubleByteBuffer.h"


namespace av
{

/**
 * 一般的rtp打包器
 */
class CRtpPackager: public RtpPackager
{
public:
	CRtpPackager(int type, MediaCodec codec);
	virtual ~CRtpPackager();

    virtual void slice(const MediaPacket& pkt, int maxSize, RtpPackagerSink* pSink);

    virtual bool join(const RtpPacket& pktIn, MediaPacket& pktOut);

    virtual void reset();

	virtual bool getFormat(MediaFormat& fmt);

    int	m_type;
	MediaCodec	m_codec;

protected:
    DoubleByteBuffer	m_buffer;

};



} /* namespace av */

#endif /* CRTPPACKAGER_H_ */
